package com.mingqijia.gassafety.db.entity.vo;

import com.baomidou.mybatisplus.annotation.TableField;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;

import java.util.Date;
import java.util.List;

/**
 * <p>
 * 报警记录
 * @author guoliang.lao
 * @since 2022-08-09
 */

@Data
public class HistoryAlarmVo {
        /**
         * 主键id
         */
        private Long id;
        /**
         * 最近一次上报时间
         */
        private Date latestTime;

        /**
         * 设备ID
         */
        private String equipmentId;
        /**
         * 设备号
         */
        private String imei;
        /**
         * 设备名称
         */
        private String equipmentName;
        /**
         * 设备类型
         */
        private String equipmentType;
        private String equipmentModel;
        private String equipmentManufacturer;
        /**
         * 设备位置
         */
        private String installationPosition;

        /**
         * 报警时气体浓度
         */
        private int concentration;

        /**
         * 户名
         */
        private String custName;
        /**
         * 户号
         */
        private String subsCode;
        /**
         * 户址
         */
        private String custAddress;
        /**
         * 户主手机号
         */
        private String custPhone;
        /**
         * 行业类型
         */
        private String industryType;
        /**
         * 组织编码
         */
        private String orgCode;
        /**
         * 安装地址
         */
        private String installationAddress;
        /**
         * 客户id
         */
        private Integer consumerId;

        /**
         * 客户名称
         */
        private String name;
        /**
         * 用户id
         */
        private String memberId;
        /**
         * 联系人姓名
         */
        private String contactName;
        /**
         * 联系人手机号
         */
        private  String contactPhone;

        /**
         * 有电磁阀
         */
        private Integer hasValve;
        /**
         * 报警持续时长
         */
        private  String warnDuration;
        /**
         * 处理时间
         */
        private Date appealTime;

        private String spId;

        @ApiModelProperty("导出时选中的id列表")
        private List<Long> ids;

        @ApiModelProperty(value = "接收器状态 0-离线,1-正常")
        private Integer receiverStatus;

        @ApiModelProperty(value = "阀门状态 0-开 1-关")
        private Integer valveStatus;

        @ApiModelProperty(value = "故障状态 0-否 1-是")
        private Integer brokenStatus;

        @ApiModelProperty(value = "故障原因")
        private String brokenInfo;


        @ApiModelProperty(value = "客户类型, 默认0:普通客户,1紫荆客户")
        private Integer consumerType;

        @ApiModelProperty(value = "用户类型")
        private String custType;

        @ApiModelProperty(value = "用户类型")
        private String custTypeCode;

        @ApiModelProperty(value = "设备来源")
        private Integer equipmentFrom;

        @ApiModelProperty(value = "紫荆用户手机号")
        private String phone;
        @ApiModelProperty(value = "工单编号")
        private String orderNo;

        @ApiModelProperty(value = "工单回传的报警原因")
        private String orderReason;


        @ApiModelProperty(value = "处理状态")
        private Integer applyStatus;

        @ApiModelProperty(value = "处理详情")
        private String appealResult;

        @ApiModelProperty(value = "工单完成时间")
        private Date orderCompleteTime;

        @ApiModelProperty(value = "工单完成时间")
        private Date orderCreatedTime;

        @ApiModelProperty(value = "处理状态")
        private Integer appealStatus;

        @ApiModelProperty(value = "处理人姓名")
        private String userName;

        @ApiModelProperty(value = "处理人账号")
        private String userAccount;

        @ApiModelProperty(value = "与设备绑定的电磁阀id")
        private Integer valveInfoId;

        @ApiModelProperty(value = "检测类型")
        private String detectionType;
        @ApiModelProperty(value = "经纬度")
        private String lonLat;
        @ApiModelProperty(value = "通讯方式")
        private String communicationMode;
        @ApiModelProperty(value = "运营商")
        private String operators;
        @ApiModelProperty(value = "信号强度")
        private Integer signal;

        /**
         * 实时设备上绑定的客户
         */
        private Integer latestConsumerId;

        /**
         * 工单id
         */
        private Long workorderId;

        /**
         * 客户地址
         */
        @ApiModelProperty(value = "客户地址")
        private String customerAddress;

        @ApiModelProperty(value = "报警设备数")
        private Integer alarmSum;
}
